package com.cicc.beergamevirtualsimulationsystem.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.cicc.beergamevirtualsimulationsystem.entity.ParameterEntity;
import com.cicc.beergamevirtualsimulationsystem.model.parameter.dto.CurrentRoomParameterDto;
import com.cicc.beergamevirtualsimulationsystem.model.parameter.dto.InnerGameParameterDto;
import com.cicc.beergamevirtualsimulationsystem.model.parameter.req.InnerGameParameterUpdateReq;
import com.cicc.beergamevirtualsimulationsystem.model.parameter.req.ParameterCreatorReq;
import com.cicc.beergamevirtualsimulationsystem.model.parameter.dto.DefaultParameterDto;
import com.cicc.beergamevirtualsimulationsystem.model.parameter.dto.RoomParameterDto;
import com.cicc.beergamevirtualsimulationsystem.model.parameter.req.ParameterUpdateReq;

public interface ParameterService extends IService<ParameterEntity> {
    /**
     * 查询系统默认参数
     *
     * @return
     */
    DefaultParameterDto queryDefaultParameter();
    /**
     * 创建游戏参数
     *
     * @param parameterCreatorReq
     * @return
     */
    String createParameter(ParameterCreatorReq parameterCreatorReq);

    /**
     * 查询当前房间的配置参数
     *
     * @param roomId
     * @return
     */
    RoomParameterDto queryParameterByRoomId(String roomId);

    /**
     * 更新房间配置【未开局】
     * @param parameterUpdateReq
     * @return
     */
    void updateRoomParameter(ParameterUpdateReq parameterUpdateReq);

    /**
     * 更新房间配置【局内】
     * @param innerGameParameterUpdateReq
     * @return
     */
    InnerGameParameterDto updateInnerGameParameter(InnerGameParameterUpdateReq innerGameParameterUpdateReq);
}
